refactor(storage)!: migrate to TypeScript and match firebase-js-sdk API#8824
refactor(storage)!: migrate to TypeScript and match firebase-js-sdk API#8824russellwheatley wants to merge 116 commits intomainfrom
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Hello 👋, this PR has been opened for more than 14 days with no activity on it. If you think this is a mistake please comment and ping a maintainer to get this merged ASAP! Thanks for contributing! You have 7 days until this gets closed automatically |
…h namespace needed due to ref overload
|
/gemini summary |
Summary of ChangesThis pull request performs a significant refactor of the storage package to improve alignment with the official Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Activity
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 3 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3ee0a27. Configure here.
this was needed for react-native-macos immediately as it runs on 'latest-stable' in CI, while react-native was pinned to a prior version so CI kept passing local builds will fail without this though and do need it
…at still have methods (such as StorageReference) and fire console warning incorrectly
|
You have used all of your free Bugbot PR reviews. To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial. |

Description
types/namespaced.tsand are almost identical to previous index.d.ts. This make it a really easy clean up when we switch off namespaced.Breaking Changes
storage.statics.*types from modular. Need to import individually. See commitRelated issues
Release Summary
Checklist
AndroidiOSOther(macOS, web)e2etests added or updated inpackages/\*\*/e2ejesttests added or updated inpackages/\*\*/__tests__Test Plan
Think
react-native-firebaseis great? Please consider supporting the project with any of the below:React Native FirebaseandInvertaseon TwitterNote
High Risk
High risk because it introduces breaking API renames (
StorageReference→Reference) and reshapes core Storage task/list/ref behaviors and types, which can affect most Storage consumers at compile time and runtime.Overview
Refactors
@react-native-firebase/storageto TypeScript and reorganizes exports around a newtypes/storage.tsmodular surface (with separatetypes/namespaced.tskept for backwards compatibility).Aligns the modular API more closely with the firebase-js-sdk:
ref()now supports fullgs:///https://URLs (replacingrefFromURLusage),child()and modulartoString()helpers are removed in favor ofref(refOrStorage, path)overloads andReference.toString(), and list option typing/handling is updated to allow nullable fields in modular calls.Renames the public reference class from
StorageReferencetoReference, updates task/list internals (StorageTask,StorageListResult) to typed implementations, and adjusts task/error typing to useNativeFirebaseErrorplus asyncpause()/resume()/cancel()semantics. CI type-drift checking is extended to include Storage via new compare-typesstorage-js-sdk.d.tsandpackages/storage/config.ts.Reviewed by Cursor Bugbot for commit 3ee0a27. Bugbot is set up for automated code reviews on this repo. Configure here.